package imports;

import java.io.File;
import java.io.FileOutputStream;

import org.jdom.Document;
import org.jdom.Element;
import org.jdom.output.XMLOutputter;

import dto.DTOCotizacion;
import dto.DTOItemCotizacion;
import dto.DTOOrdenDePedidoProveedor;
import dto.DTOPedidoItem;

public class ExportCotizacionCliente {

	public String export(DTOCotizacion cotizacion, String ubicacion) {
		Element root = new Element("Cotizacion");
		root.setAttribute("CodigoCotizacion", cotizacion.getCodigo().toString());
		root.setAttribute("NombreCliente", cotizacion.getCliente().getNombre());
		Element fechaIni = new Element("FechaInicio");
		fechaIni.setText(cotizacion.getFechaInicio().toString());
		Element fechaFin = new Element("FechaFin");
		fechaFin.setText(cotizacion.getFechaFin().toString());
		Element itemsPedidos = new Element("ItemsPedidos");
		Element item;
		Element SFK;
		Element cantidad;
		Element precio;
		Element descuento;
		for (DTOItemCotizacion cotItem : cotizacion.getItems()) {
			item = new Element("Producto");
			SFK = new Element("SFK");
			SFK.setText(cotItem.getProducto().getSkf().getCodigo());
			cantidad = new Element("Cantidad");
			cantidad.setText(cotItem.getCantidad().toString());
			precio = new Element("Precio");
			precio.setText(cotItem.getPrecio().toString());
			descuento = new Element("Descuento");
			descuento.setText(cotItem.getDescuento().toString());
			item.addContent(SFK);
			item.addContent(cantidad);
			item.addContent(precio);
			item.addContent(descuento);
			itemsPedidos.addContent(item);
		}
		root.addContent(fechaIni);
		root.addContent(fechaFin);
		root.addContent(itemsPedidos);
		Document docXML = new Document(root);
		String rta = "";
		try {
			XMLOutputter out = new XMLOutputter();
			FileOutputStream file = new FileOutputStream(ubicacion
					+ "\\CotizacionNro" + cotizacion.getCodigo() + ".xml");
			out.output(docXML, file);
			file.flush();
			file.close();
			out.output(docXML, System.out);
			rta = out.outputString(docXML);
		} catch (Exception e) {
			e.printStackTrace();
		}
		return rta;
	}
}